package com.qfmy.model.vo.novel;

import com.qfmy.model.entity.novel.Novel;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.math.BigDecimal;
import java.util.List;

/**
 * @author 清风明月
 * @Package com.qfmy.web.app.vo.novel
 * @date 2025/10/31
 * @description 小说的实体类
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
public class NovelVo {

    @Schema(description = "小说ID")
    private Integer novelId;

    @Schema(description = "小说名称")
    private String novelName;

    @Schema(description = "作者的名称")
    private String authorName;

    @Schema(description = "小说封面URL")
    private String image;

    @Schema(description = "分类ID（关联分类表）")
    private Integer categoryId;

    @Schema(description = "小说评分（0.0-99.9）")
    private BigDecimal score;

    @Schema(description = "评分人数")
    private Long scoreCount;

    @Schema(description = "小说章节数量")
    private Integer chapterNum;

    @Schema(description = "小说字数")
    private Integer count;

    @Schema(description = "小说阅读量")
    private Integer viewCount;

    @Schema(description = "小说状态：0-连载，1-完结，2-断更")
    private String status;

    @Schema(description = "小说描述")
    private String des;

    @Schema(description = "搜索次数")
    private Integer searchCount;

    @Schema(description = "是否免费：0-免费，1-付费")
    private Boolean free;

    @Schema(description = "分类名称")
    private String categoryName;

    @Schema(description = "小说评论数")
    private Integer commentCount;

    @Schema(description = "小说标签")
    private List<String> tags;

    @Schema(description = "最后阅读的章节")
    private Integer chapterIndex;

    @Schema(description = "最新章节名称")
    private String lastChapterName;

}
